Implement gdk_screen_get_monitor_scale_factor generically
authorMatthias Clasen <mclasen@redhat.com>
Tue, 13 Sep 2016 14:45:06 +0000 (10:45 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Wed, 14 Sep 2016 10:45:21 +0000 (06:45 -0400)
This was forgotten when the other screen monitor apis were
ported to GdkMonitor.

https://bugzilla.gnome.org/show_bug.cgi?id=771349

gdk/gdkscreen.c

index 85cb93ffc4e5384f0a03fb30ff89340d41f94546..2249e7ef305febcd7e80f259c371f0586b421ee4 100644 (file)
@@ -1095,16 +1095,15 @@ gint
 gdk_screen_get_monitor_scale_factor (GdkScreen *screen,
                                      gint       monitor_num)
 {
-  GdkScreenClass *screen_class;
+  GdkMonitor *monitor;
 
   g_return_val_if_fail (GDK_IS_SCREEN (screen), 1);
   g_return_val_if_fail (monitor_num >= 0, 1);
   g_return_val_if_fail (monitor_num < gdk_screen_get_n_monitors (screen), 1);
 
-  screen_class = GDK_SCREEN_GET_CLASS (screen);
+  monitor = get_monitor (screen, monitor_num);
 
-  if (screen_class->get_monitor_scale_factor)
-    return screen_class->get_monitor_scale_factor (screen, monitor_num);
+  g_return_val_if_fail (monitor != NULL, 1);
 
-  return 1;
+  return gdk_monitor_get_scale_factor (monitor);
 }